<?php

namespace app\common\validate;

use think\Validate;

class UserAddress extends Validate
{
    /**
     * 验证规则
     */
    protected $rule = [
        'id'        => 'require|number',
        'user_id'   => 'require',
        'name'      => 'require|chsDash',
        'mobile'    => 'require|regex:^1[0-9]{10}$',
        'address'   => 'require|length:1,150',
        'corridor'  => 'require|length:1,150',
        'detail'    => 'length:0,150',
        'lng'       => 'require|float',
        'lat'       => 'require|float',
        'type'      => 'require|number'
    ];

    /**
     * 提示消息
     */
    protected $message = [
        'id.number'         => '地址ID错误',
        'user_id'           => '用户ID不能为空',
        'name'              => '姓名不能为空',
        'name.chsDash'      => '姓名只能是汉字、字母、数字',
        'mobile'            => '联系电话不能为空',
        'mobile.regex'      => '联系电话格式错误',
        'address'           => '地址不能为空',
        'address.length'    => '地址长度范围 1~150个字符',
        'corridor'          => '门牌号不能为空',
        'corridor.length'   => '门牌号长度范围 1~150个字符',
        'detail.length'     => '详细地址长度范围 0~150个字符',
        'lng'               => '地址经度不能为空',
        'lng.float'         => '地址经度格式错误',
        'lat'               => '地址纬度不能为空',
        'lat.float'         => '地址纬度格式错误',
        'type'              => '地址类型不能为空',
        'type.number'       => '地址类型格式错误',
    ];

    /**
     * 字段描述
     */
    protected $field = [

    ];

    /**
     * 验证场景
     */
    protected $scene = [
        'add'  => ['user_id', 'name', 'mobile', 'address', 'corridor', 'detail', 'lng', 'lat', 'type'],
        'edit' => ['id', 'user_id', 'name', 'mobile', 'address', 'corridor', 'detail', 'lng', 'lat', 'type'],
    ];
}